package com.ruoyi.core.mapper;

import java.util.List;
import com.ruoyi.core.domain.ActivationCodeDetail;
import com.ruoyi.core.domain.ActivationCodeStatus;
import com.ruoyi.core.domain.custombean.ActivationCodeDetailQueryResult;
import org.apache.ibatis.annotations.Param;

/**
 * core_detailMapper接口
 * 
 * @author ruoyi
 * @date 2020-09-28
 */
public interface ActivationCodeDetailMapper 
{
    /**
     * 查询core_detail
     * 
     * @param id core_detailID
     * @return core_detail
     */
    public ActivationCodeDetail selectActivationCodeDetailById(Long id);

    /**
     * 查询core_detail列表
     * 
     * @param activationCodeDetail core_detail
     * @return core_detail集合
     */
    public List<ActivationCodeDetail> selectActivationCodeDetailList(ActivationCodeDetail activationCodeDetail);

    /**
     * 新增core_detail
     * 
     * @param activationCodeDetail core_detail
     * @return 结果
     */
    public int insertActivationCodeDetail(ActivationCodeDetail activationCodeDetail);

    /**
     * 修改core_detail
     * 
     * @param activationCodeDetail core_detail
     * @return 结果
     */
    public int updateActivationCodeDetail(ActivationCodeDetail activationCodeDetail);

    /**
     * 删除core_detail
     * 
     * @param id core_detailID
     * @return 结果
     */
    public int deleteActivationCodeDetailById(Long id);

    /**
     * 批量删除core_detail
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteActivationCodeDetailByIds(Long[] ids);

    List<ActivationCodeDetailQueryResult> findByBatchId(Long batchId);

    int updateStatusById(@Param("id") Long id, @Param("status") ActivationCodeStatus status);

    int deleteByBatchId(Long[] batchIds);

    ActivationCodeDetailQueryResult findByCode(String realCode);

    List<ActivationCodeDetailQueryResult> findByIdSet(Long[] ids);
}
